package com.train.mgr.modules.biz.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField;
import com.train.common.db.entity.BaseEntity;
import java.io.Serializable;
import java.util.Date;

import lombok.extern.slf4j.Slf4j;

import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 课程学员表
 * </p>
 *
 * @author cxg
 * @date 2025-09-30
 */
@Slf4j
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("a_course_user")
public class CourseUser extends BaseEntity<CourseUser> {

    private static final long serialVersionUID = 1L;

    @TableId(type = IdType.AUTO)
    private Long id;
    /**
     * 课程id
     */
    @TableField("course_id")
    private Long courseId;

    /**
     * 学员userId
     */
    @TableField("user_id")
    private Long userId;

    /**
     * 学员姓名
     */
    @TableField("nick_name")
    private String nickName;

    /**
     * 学员账号
     */
    @TableField("user_name")
    private String userName;

    /**
     * 是否完成课程（0：未完成；1：已完成）
     */
    @TableField("is_finish")
    private Integer isFinish;

    /**
     * 课程完成时间
     */
    @TableField("finish_time")
    private LocalDateTime finishTime;

    /**
     * 审核状态（0：未通过，1：已通过，2:已提交申请）
     */
    @TableField("review_status")
    private Integer reviewStatus;

    /**
     * 企业ID
     */
    @TableField("customer_id")
    private Long customerId;


    /**
     * 加入时间
     */
    @TableField("join_time")
    private Date joinTime;

    /**
     * 是否删除（0:否，1：是）
     */
    @TableField("is_deleted")
    private Integer isDeleted;
}
